Thema Datum  Von Nutzer Rating
Antwort
08.08.2019 15:34:08 Mirko
NotSolved
08.08.2019 16:26:04 Ulrich
NotSolved
08.08.2019 18:32:28 Mirko
NotSolved
08.08.2019 19:36:05 Trägheit
NotSolved
08.08.2019 21:13:25 Ulrich
NotSolved
09.08.2019 08:55:08 Mirko
NotSolved
Rot Loop über Datein im Ordner => ein erster Anfang die zweite
09.08.2019 11:29:13 Ulrich
NotSolved
09.08.2019 14:28:43 Mirko
NotSolved
10.08.2019 10:46:52 Ulrich
NotSolved
10.08.2019 16:19:58 Mirko
NotSolved
11.08.2019 14:08:30 Trägheit
NotSolved
12.08.2019 20:43:29 Mirko
NotSolved
13.08.2019 12:39:19 Mirko
Solved
13.08.2019 17:26:09 Trägheit
NotSolved
08.08.2019 16:33:43 Ulrich
NotSolved

Ansicht des Beitrags:
Von:
Ulrich
Datum:
09.08.2019 11:29:13
Views:
445
Rating: Antwort:
  Ja
Thema:
Loop über Datein im Ordner => ein erster Anfang die zweite

Hallo Mirko,

freut mich, dass es dir geholfen hat. Woran lag es denn, dass der Code bei dir nicht "wie gewünscht funktionierte"? Welche Information hat dir geholfen und welche weniger?

 

"Ist es auch möglich, dass alle Werte der Quell-Datei untereinander in der Ziel-Datei stehen?"
Ja.

"Momentan werden sie ja separat in einen neuen Reiter geschrieben. (Ich denke, man benötigt eine Arte Counter, der die Anzahl an Dateien in dem Ordner zählt und dann eine Schleife. Wie zählt man denn die Dateien in einem Ordner und kommt die Schleife in den Do-While-Loop?"
Ich habe deinen ersten Post so verstanden, dass sie immer in ein neues Tabellenblatt geschrieben werden sollen. Es gibt verschiedene Möglichkeiten, die Anzahl der Dateien in einem Ordner festzustellen (man kann z.B. eine Schleife über alle Dateien eines Verzeichnisses durchlaufen und dabei zählen, oder man kann ein Verzeichnis als "Objekt einlesen" - das Objekt hat dann schon die Anzahl der Dateien als Eigenschaft auf die man dann auch zugreifen kann).
In diesem Fall ist aber das ja nicht wirklich nötig: Wir haben ja sowieso schon eine Schleife über die *.xls*- Dateien in einem Ordner. Man kann also innerhalb dieser Schleife einfach eine Variable, die man als Zähler verwendet, immer um 1 erhöhen. Dazu benutze ich die Variable ZielZeile:

Sub zweiterVersuch()
    Dim Pfad As String
    Dim Fname As String
    Dim wbQuelle As Workbook
    Dim wsZiel As Worksheet
    Dim ZielZeile As Long
    
    Pfad = "c:\test\test\"     'abschließender Backslash!!!!!
    
    Set wsZiel = ThisWorkbook.Worksheets.Add()
    ZielZeile = 1
    With wsZiel.Cells(ZielZeile, 1).Resize(1, 3)
        .Value = Array("Dateiname", "Reiter1 C17", "Reiter2 F7")
        .Font.Bold = True
    End With
 
    Fname = Dir(Pfad & "*.xls*")
 
    Do While Fname <> ""
        Set wbQuelle = Workbooks.Open(Pfad & Fname)
        
        ZielZeile = ZielZeile + 1
        
        wsZiel.Cells(ZielZeile, 1).Value = wbQuelle.Name
        wsZiel.Cells(ZielZeile, 2).Value = wbQuelle.Worksheets(1).Range("C17").Value
        wsZiel.Cells(ZielZeile, 3).Value = wbQuelle.Worksheets(2).Range("F7").Value
 
        wbQuelle.Close savechanges:=False
        Set wbQuelle = Nothing
 
        Fname = Dir()
    Loop
 
End Sub

Grüße, Ulrich


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
08.08.2019 15:34:08 Mirko
NotSolved
08.08.2019 16:26:04 Ulrich
NotSolved
08.08.2019 18:32:28 Mirko
NotSolved
08.08.2019 19:36:05 Trägheit
NotSolved
08.08.2019 21:13:25 Ulrich
NotSolved
09.08.2019 08:55:08 Mirko
NotSolved
Rot Loop über Datein im Ordner => ein erster Anfang die zweite
09.08.2019 11:29:13 Ulrich
NotSolved
09.08.2019 14:28:43 Mirko
NotSolved
10.08.2019 10:46:52 Ulrich
NotSolved
10.08.2019 16:19:58 Mirko
NotSolved
11.08.2019 14:08:30 Trägheit
NotSolved
12.08.2019 20:43:29 Mirko
NotSolved
13.08.2019 12:39:19 Mirko
Solved
13.08.2019 17:26:09 Trägheit
NotSolved
08.08.2019 16:33:43 Ulrich
NotSolved